package com.xuyoupeng.springframework.beans.factory.config;

import com.xuyoupeng.springframework.beans.BeansException;

/**
 * @author xuyoupneg
 * @description
 * @date 2024/3/20 20:03
 */
public interface BeanPostProcessor {

    /**
     * 在bean对象执行初始化方法之前执行次方法
     * @param bean
     * @param beanName
     * @return
     * @throws BeansException
     */
    Object postProcessBeforeInitialization(Object bean, String beanName) throws BeansException;

    /**
     * 在bean对象执行初始化方法之后执行次方法
     * @param bean
     * @param beanName
     * @return
     * @throws BeansException
     */
    Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException;


}
